/*   1:    */ package org.jetbrains.jps.model.java.impl;
/*   2:    */ 
/*   3:    */

import com.intellij.openapi.util.Comparing;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.model.JpsUrlList;
import org.jetbrains.jps.model.ex.JpsCompositeElementBase;
import org.jetbrains.jps.model.impl.JpsUrlListRole;
import org.jetbrains.jps.model.java.JpsJavaModuleExtension;
import org.jetbrains.jps.model.java.LanguageLevel;

/*   4:    */
/*   5:    */
/*   6:    */
/*   7:    */
/*   8:    */
/*   9:    */
/*  10:    */
/*  11:    */ 
/*  12:    */ public class JpsJavaModuleExtensionImpl
/*  13:    */   extends JpsCompositeElementBase<JpsJavaModuleExtensionImpl>
/*  14:    */   implements JpsJavaModuleExtension
/*  15:    */ {
/*  16: 30 */   private static final JpsUrlListRole a = new JpsUrlListRole("javadoc roots");
/*  17: 31 */   private static final JpsUrlListRole b = new JpsUrlListRole("annotation roots");
/*  18:    */   private String c;
/*  19:    */   private String d;
/*  20:    */   private boolean e;
/*  21:    */   private boolean f;
/*  22:    */   private LanguageLevel g;
/*  23:    */   
/*  24:    */   public JpsJavaModuleExtensionImpl()
/*  25:    */   {
/*  26: 39 */     this.myContainer.setChild(a);
/*  27: 40 */     this.myContainer.setChild(b);
/*  28:    */   }
/*  29:    */   
/*  30:    */   private JpsJavaModuleExtensionImpl(JpsJavaModuleExtensionImpl paramJpsJavaModuleExtensionImpl)
/*  31:    */   {
/*  32: 44 */     super(paramJpsJavaModuleExtensionImpl);
/*  33: 45 */     this.c = paramJpsJavaModuleExtensionImpl.c;
/*  34: 46 */     this.d = paramJpsJavaModuleExtensionImpl.d;
/*  35: 47 */     this.g = paramJpsJavaModuleExtensionImpl.g;
/*  36:    */   }
/*  37:    */   
/*  38:    */   @NotNull
/*  39:    */   public JpsJavaModuleExtensionImpl createCopy()
/*  40:    */   {
/*  41: 53 */     void tmp8_5 = new JpsJavaModuleExtensionImpl(this);
/*  42: 53 */     if (tmp8_5 == null) {
/*  43: 53 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaModuleExtensionImpl", "createCopy" }));
/*  44:    */     }
/*  45: 53 */     return tmp8_5;
/*  46:    */   }
/*  47:    */   
/*  48:    */   @NotNull
/*  49:    */   public JpsUrlList getAnnotationRoots()
/*  50:    */   {
/*  51: 59 */     JpsUrlList tmp13_10 = ((JpsUrlList)this.myContainer.getChild(b));
/*  52: 59 */     if (tmp13_10 == null) {
/*  53: 59 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaModuleExtensionImpl", "getAnnotationRoots" }));
/*  54:    */     }
/*  55: 59 */     return tmp13_10;
/*  56:    */   }
/*  57:    */   
/*  58:    */   @NotNull
/*  59:    */   public JpsUrlList getJavadocRoots()
/*  60:    */   {
/*  61: 65 */     JpsUrlList tmp13_10 = ((JpsUrlList)this.myContainer.getChild(a));
/*  62: 65 */     if (tmp13_10 == null) {
/*  63: 65 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaModuleExtensionImpl", "getJavadocRoots" }));
/*  64:    */     }
/*  65: 65 */     return tmp13_10;
/*  66:    */   }
/*  67:    */   
/*  68:    */   public String getOutputUrl()
/*  69:    */   {
/*  70: 70 */     return this.c;
/*  71:    */   }
/*  72:    */   
/*  73:    */   public void setOutputUrl(String paramString)
/*  74:    */   {
/*  75: 75 */     if (!Comparing.equal(this.c, paramString))
/*  76:    */     {
/*  77: 76 */       this.c = paramString;
/*  78: 77 */       fireElementChanged();
/*  79:    */     }
/*  80:    */   }
/*  81:    */   
/*  82:    */   public String getTestOutputUrl()
/*  83:    */   {
/*  84: 83 */     return this.d;
/*  85:    */   }
/*  86:    */   
/*  87:    */   public void setTestOutputUrl(String paramString)
/*  88:    */   {
/*  89: 88 */     if (!Comparing.equal(this.d, paramString))
/*  90:    */     {
/*  91: 89 */       this.d = paramString;
/*  92: 90 */       fireElementChanged();
/*  93:    */     }
/*  94:    */   }
/*  95:    */   
/*  96:    */   public LanguageLevel getLanguageLevel()
/*  97:    */   {
/*  98: 96 */     return this.g;
/*  99:    */   }
/* 100:    */   
/* 101:    */   public void setLanguageLevel(LanguageLevel paramLanguageLevel)
/* 102:    */   {
/* 103:101 */     if (!Comparing.equal(this.g, paramLanguageLevel))
/* 104:    */     {
/* 105:102 */       this.g = paramLanguageLevel;
/* 106:103 */       fireElementChanged();
/* 107:    */     }
/* 108:    */   }
/* 109:    */   
/* 110:    */   public void applyChanges(@NotNull JpsJavaModuleExtensionImpl paramJpsJavaModuleExtensionImpl)
/* 111:    */   {
/* 112:108 */     if (paramJpsJavaModuleExtensionImpl == null) {
/* 113:108 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaModuleExtensionImpl", "applyChanges" }));
/* 114:    */     }
/* 115:108 */     setLanguageLevel(paramJpsJavaModuleExtensionImpl.g);
/* 116:109 */     setInheritOutput(paramJpsJavaModuleExtensionImpl.e);
/* 117:110 */     setExcludeOutput(paramJpsJavaModuleExtensionImpl.f);
/* 118:111 */     setOutputUrl(paramJpsJavaModuleExtensionImpl.c);
/* 119:112 */     setTestOutputUrl(paramJpsJavaModuleExtensionImpl.d);
/* 120:    */   }
/* 121:    */   
/* 122:    */   public boolean isInheritOutput()
/* 123:    */   {
/* 124:117 */     return this.e;
/* 125:    */   }
/* 126:    */   
/* 127:    */   public void setInheritOutput(boolean paramBoolean)
/* 128:    */   {
/* 129:122 */     if (this.e != paramBoolean)
/* 130:    */     {
/* 131:123 */       this.e = paramBoolean;
/* 132:124 */       fireElementChanged();
/* 133:    */     }
/* 134:    */   }
/* 135:    */   
/* 136:    */   public boolean isExcludeOutput()
/* 137:    */   {
/* 138:130 */     return this.f;
/* 139:    */   }
/* 140:    */   
/* 141:    */   public void setExcludeOutput(boolean paramBoolean)
/* 142:    */   {
/* 143:135 */     if (this.f != paramBoolean)
/* 144:    */     {
/* 145:136 */       this.f = paramBoolean;
/* 146:137 */       fireElementChanged();
/* 147:    */     }
/* 148:    */   }
/* 149:    */ }



/* Location:           E:\idea\

 * Qualified Name:     org.jetbrains.jps.model.java.impl.JpsJavaModuleExtensionImpl

 * JD-Core Version:    0.7.0.1

 */